﻿Imports Microsoft.Practices.EnterpriseLibrary.Data
Imports Seuss.EnterpriseLibrary.DataAccess
Imports Seuss.EnterpriseLibrary.BusinessLogic
Imports System.Web
Imports System.Data

Partial Class Consulta_AL_CursoActual_Rec
    Inherits System.Web.UI.Page
    Dim nCurGruCodigo As String

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        If Request.QueryString("nCurGruCodigo") Is Nothing Or Request.QueryString("nCurGruCodigo") Is String.Empty Then
            If Session("nCurGruCodigo") Is Nothing Or Session("nCurGruCodigo") Is String.Empty Then
                Response.Redirect("AL_InfoAcad_CA.aspx")
            Else
                nCurGruCodigo = Session("nCurGruCodigo")
            End If
        Else
            Session("nCurGruCodigo") = Request.QueryString("nCurGruCodigo")
            nCurGruCodigo = Request.QueryString("nCurGruCodigo")
        End If

        Response.Expires = -1
        Response.AddHeader("Pragma", "no-cache")
        Response.AddHeader("cache-control", "private")
        Response.CacheControl = "no-cache"
        lnkRegresar_3.HRef = "./AL_CursoActual.aspx?nCurGruCodigo=" + nCurGruCodigo
        lnkRegresar_4.HRef = "./AL_CursoActual.aspx?nCurGruCodigo=" + nCurGruCodigo

        If Not Page.IsPostBack Then
            CargaNodos()
            Using Seguridad As New BLL_Administracion
                Seguridad.Set_Transaccion_Insert(Nothing, 100401, IdentityUser.UserCode, My.Request.UserHostAddress.ToString, CrearXMLTransaccion("Consulta Pagina Movil", "/Pagina|" + My.Request.Url.Segments(My.Request.Url.Segments.Length - 1).ToString))
            End Using
        End If
    End Sub

    Private Sub CargaNodos()

        Dim ldrcDocCodigo As New List(Of IDataReader)
        Using ObjPool As New PoolDbCommand()
            Dim Objgrupo As New DAL_Kiosco(ObjPool.Database)
            ObjPool.AddDbCommand(Objgrupo.Get_Registro_By_nCurGruCodigo(nCurGruCodigo), PoolDbCommand.PoolDbCommandResultType.Query)
            ObjPool.Pooling(Nothing, ldrcDocCodigo, True)
            If ldrcDocCodigo(0).Read Then
                lblcDocCodigo.Text = ldrcDocCodigo(0).Item("cDocCodigo")
            End If
        End Using
        ldrcDocCodigo(0).Close()
        ldrcDocCodigo(0) = Nothing

        Dim ldrAsignatura As New List(Of IDataReader)
        Dim asignatura As String = ""
        Dim codiasig As String = ""
        Using ObjPool As New PoolDbCommand()
            Dim Objgrupo As New DAL_Kiosco(ObjPool.Database)
            ObjPool.AddDbCommand(Objgrupo.Get_Asignatura_by_nCurGruCodigo(nCurGruCodigo), PoolDbCommand.PoolDbCommandResultType.Query)
            ObjPool.Pooling(Nothing, ldrAsignatura, True)
            If ldrAsignatura(0).Read Then
                asignatura = ldrAsignatura(0).Item("Asignatura")
                codiasig = ldrAsignatura(0).Item("nCurCodigo")
            End If
        End Using
        ldrAsignatura(0).Close()
        ldrAsignatura(0) = Nothing

        TvVisor.Nodes.Clear()
        Dim NodoPrincipal As New TreeNode

        NodoPrincipal.Text = "<font style=""font-size: 13px; font-weight:bold;"">&nbsp;" & asignatura & "</font>"
        NodoPrincipal.Value = codiasig
        NodoPrincipal.SelectAction = TreeNodeSelectAction.Select
        NodoPrincipal.ImageUrl = "~/imagenes/carpeta.gif"
        TvVisor.Nodes.Add(NodoPrincipal)

        Dim ldrGrupo As New List(Of IDataReader)
        Using ObjPool As New PoolDbCommand()
            Dim Objgrupo As New DAL_Kiosco(ObjPool.Database)
            ObjPool.AddDbCommand(Objgrupo.Get_DocLink_By_cDocCodigo_nItem(lblcdoccodigo.Text, 0), PoolDbCommand.PoolDbCommandResultType.Query)
            ObjPool.Pooling(Nothing, ldrGrupo, True)
        End Using

        Do While ldrGrupo(0).Read
            Dim NodoCarpeta As New TreeNode
            NodoCarpeta.Text = "<font style=""font-size: 12px;"">&nbsp;" & ldrGrupo(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<Font style=""font-style: italic; font-size: 12px"">(" & IIf(ldrGrupo(0).Item("ESTADO").ToString = "Compartido", "Permite escritura", "Solo Lectura") & ")</Font>"
            NodoCarpeta.Value = ldrGrupo(0).Item("cDocLinDescripcion").ToString & "|" & ldrGrupo(0).Item("nDocLinNum").ToString & "|" & ldrGrupo(0).Item("cperCodigo").ToString & "|" & ldrGrupo(0).Item("nCarCodigo").ToString
            NodoCarpeta.ImageUrl = "~/imagenes/carpeta.gif"
            If Not ldrGrupo(0).Item("ESTADO").ToString = "Compartido" Then
                NodoCarpeta.SelectAction = TreeNodeSelectAction.Expand
            Else
                NodoCarpeta.SelectAction = TreeNodeSelectAction.SelectExpand
                NodoCarpeta.NavigateUrl = "AL_CursoActual_RecProp.aspx?cDocCodigo=" & lblcdoccodigo.Text & "&nDocLin=" & ldrGrupo(0).Item("nDocLinNum").ToString & "&nCurGruCodigo=" & nCurGruCodigo & "&value=" & NodoPrincipal.ValuePath & "/" & NodoCarpeta.Value
            End If

            NodoPrincipal.ChildNodes.Add(NodoCarpeta)

            Dim ldrHijos As New List(Of IDataReader)
            Using ObjPool As New PoolDbCommand()
                Dim Objgrupo As New DAL_Kiosco(ObjPool.Database)
                ObjPool.AddDbCommand(Objgrupo.Get_DocLink_By_cDocCodigo_nItem(lblcdoccodigo.Text, ldrGrupo(0).Item("nDocLinNum").ToString), PoolDbCommand.PoolDbCommandResultType.Query)
                ObjPool.Pooling(Nothing, ldrHijos, True)
            End Using

            Do While ldrHijos(0).Read
                Dim Nodoarchivo As New TreeNode
                Dim VEstado As String
                Dim Pat As String = ConfigurationManager.AppSettings("DiscoVirtual")

                If ldrHijos(0).Item("nDocLinTipo") = 1 Then
                    Nodoarchivo.Text = "<font style=""font-size: 12px;"">&nbsp;" & ldrHijos(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<Font style=""font-style: italic; font-size: 12px"">(" & IIf(ldrHijos(0).Item("ESTADO").ToString = "Compartido", "Permite escritura", "Solo Lectura") & ")</Font>"
                    Nodoarchivo.Value = ldrHijos(0).Item("cDocLinDescripcion").ToString & "|" & ldrHijos(0).Item("nDocLinNum").ToString & "|" & ldrHijos(0).Item("cperCodigo").ToString & "|" & ldrHijos(0).Item("nCarCodigo").ToString
                    Nodoarchivo.ImageUrl = "~/imagenes/carpeta.gif"
                    If Not ldrHijos(0).Item("ESTADO").ToString = "Compartido" Then
                        Nodoarchivo.SelectAction = TreeNodeSelectAction.Expand
                    Else
                        Nodoarchivo.SelectAction = TreeNodeSelectAction.SelectExpand
                        Nodoarchivo.NavigateUrl = "AL_CursoActual_RecProp.aspx?cDocCodigo=" & lblcdoccodigo.Text & "&nDocLin=" & ldrHijos(0).Item("nDocLinNum").ToString & "&nCurGruCodigo=" & nCurGruCodigo & "&value=" & NodoCarpeta.ValuePath & "/" & Nodoarchivo.Value
                    End If
                    NodoCarpeta.ChildNodes.Add(Nodoarchivo)

                    Dim ldrSub As New List(Of IDataReader)
                    Using ObjPool As New PoolDbCommand()
                        Dim Objgrupo As New DAL_Kiosco(ObjPool.Database)
                        ObjPool.AddDbCommand(Objgrupo.Get_DocLink_By_cDocCodigo_nItem(lblcdoccodigo.Text, ldrHijos(0).Item("nDocLinNum").ToString), PoolDbCommand.PoolDbCommandResultType.Query)
                        ObjPool.Pooling(Nothing, ldrSub, True)
                    End Using

                    Do While ldrSub(0).Read
                        Dim Nodoarchivo2 As New TreeNode

                        If ldrSub(0).Item("nDocLinTipo") = 2 Then
                            Nodoarchivo2.Value = ldrSub(0).Item("cDocLinDescripcion").ToString & "|" & ldrSub(0).Item("nDocLinNum").ToString & "|" & ldrSub(0).Item("cperCodigo").ToString & "|" & ldrSub(0).Item("nCarCodigo").ToString
                            Nodoarchivo2.NavigateUrl = "AL_CursoActual_RecProp.aspx?cDocCodigo=" & lblcdoccodigo.Text & "&nDocLin=" & ldrSub(0).Item("nDocLinNum").ToString & "&nCurGruCodigo=" & nCurGruCodigo & "&value=" & NodoCarpeta.ValuePath & "/" & Nodoarchivo2.Value

                            If UCase(Right(ldrSub(0).Item("cDocLinUrl").ToString, 3)) = "SWF" Then
                                VEstado = IIf(Not (ldrSub(0).Item("nCarCodigo").ToString = "1" And ldrSub(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), "<a href=""" + Pat + ldrSub(0).Item("cDocLinUrl").ToString + """ target=_blank rel=""shadowbox;width=800;height=600"">Descargar</a>", "")
                                Nodoarchivo2.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrSub(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrSub(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado & "</Font></div>"
                                Nodoarchivo2.ImageUrl = IIf(ldrSub(0).Item("nCarCodigo").ToString = "1", "~/imagenes/swf.gif", "~/imagenes/swfshared.gif")
                            ElseIf UCase(Right(ldrSub(0).Item("cDocLinUrl").ToString, 3)) = "AVI" Then
                                VEstado = IIf(Not (ldrSub(0).Item("nCarCodigo").ToString = "1" And ldrSub(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), "<a href=""" + Pat + ldrSub(0).Item("cDocLinUrl").ToString + """ target=_blank>Descargar</a>", "")
                                Nodoarchivo2.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrSub(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrSub(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado & "</Font></div>"
                                Nodoarchivo2.ImageUrl = IIf(ldrSub(0).Item("nCarCodigo").ToString = "1", "~/imagenes/avi.gif", "~/imagenes/avishared.gif")
                            Else
                                VEstado = IIf(Not (ldrSub(0).Item("nCarCodigo").ToString = "1" And ldrSub(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), "<a href=""" + Pat + ldrSub(0).Item("cDocLinUrl").ToString + """ target=_blank><Font style=""font-size: 10px"">Descargar</font></a>", "")
                                Nodoarchivo2.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrSub(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrSub(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado & "</Font></div>"
                                Nodoarchivo2.ImageUrl = IIf(ldrSub(0).Item("nCarCodigo").ToString = "1", "~/imagenes/rar.gif", "~/imagenes/rarshared.png")
                            End If

                            Nodoarchivo.ChildNodes.Add(Nodoarchivo2)
                        Else
                            VEstado = IIf(Not (ldrSub(0).Item("nCarCodigo").ToString = "1" And ldrSub(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), " <a href=""" + ldrSub(0).Item("cDocLinUrl").ToString + """ target=_blank>Ver</a>", "")
                            Nodoarchivo2.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrSub(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrSub(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado & "</Font></div>"
                            Nodoarchivo2.Value = ldrSub(0).Item("cDocLinDescripcion").ToString & "|" & ldrSub(0).Item("nDocLinNum").ToString & "|" & ldrSub(0).Item("cperCodigo").ToString & "|" & ldrSub(0).Item("nCarCodigo").ToString
                            Nodoarchivo2.ImageUrl = IIf(ldrSub(0).Item("nCarCodigo").ToString = "1", "~/imagenes/Globo.png", "~/imagenes/Globoshared.png")
                            Nodoarchivo2.NavigateUrl = "AL_CursoActual_RecProp.aspx?cDocCodigo=" & lblcdoccodigo.Text & "&nDocLin=" & ldrHijos(0).Item("nDocLinNum").ToString & "&nCurGruCodigo=" & nCurGruCodigo & "&value=" & NodoCarpeta.ValuePath & "/" & Nodoarchivo2.Value
                            Nodoarchivo.ChildNodes.Add(Nodoarchivo2)
                        End If
                    Loop

                    ldrSub(0).Close()
                    ldrSub(0) = Nothing
                Else

                    If ldrHijos(0).Item("nDocLinTipo") = 2 Then

                        Nodoarchivo.Value = ldrHijos(0).Item("cDocLinDescripcion").ToString & "|" & ldrHijos(0).Item("nDocLinNum").ToString & "|" & ldrHijos(0).Item("cperCodigo").ToString & "|" & ldrHijos(0).Item("nCarCodigo").ToString
                        Nodoarchivo.NavigateUrl = "AL_CursoActual_RecProp.aspx?cDocCodigo=" & lblcdoccodigo.Text & "&nDocLin=" & ldrHijos(0).Item("nDocLinNum").ToString & "&nCurGruCodigo=" & nCurGruCodigo & "&value=" & NodoCarpeta.ValuePath & "/" & Nodoarchivo.Value

                        If UCase(Right(ldrHijos(0).Item("cDocLinUrl").ToString, 3)) = "SWF" Then
                            VEstado = IIf(Not (ldrHijos(0).Item("nCarCodigo").ToString = "1" And ldrHijos(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), "<a href=""" + Pat + ldrHijos(0).Item("cDocLinUrl").ToString + """ target=_blank rel=""shadowbox;width=800;height=600"">Descargar</a>", "")
                            Nodoarchivo.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrHijos(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrHijos(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado
                            Nodoarchivo.ImageUrl = IIf(ldrHijos(0).Item("nCarCodigo").ToString = "1", "~/imagenes/swf.gif", "~/imagenes/swfshared.gif")
                        ElseIf UCase(Right(ldrHijos(0).Item("cDocLinUrl").ToString, 3)) = "AVI" Then
                            VEstado = IIf(Not (ldrHijos(0).Item("nCarCodigo").ToString = "1" And ldrHijos(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), "<a href=""" + Pat + ldrHijos(0).Item("cDocLinUrl").ToString + """ target=_blank>Descargar</a>", "")
                            Nodoarchivo.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrHijos(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrHijos(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado
                            Nodoarchivo.ImageUrl = IIf(ldrHijos(0).Item("nCarCodigo").ToString = "1", "~/imagenes/avi.gif", "~/imagenes/avishared.gif")
                        Else
                            VEstado = IIf(Not (ldrHijos(0).Item("nCarCodigo").ToString = "1" And ldrHijos(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), "<a href=""" + Pat + ldrHijos(0).Item("cDocLinUrl").ToString + """ target=_blank><Font style=""font-size: 10px"">Descargar</Font></a>", "")
                            Nodoarchivo.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrHijos(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrHijos(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado
                            Nodoarchivo.ImageUrl = IIf(ldrHijos(0).Item("nCarCodigo").ToString = "1", "~/imagenes/rar.gif", "~/imagenes/rarshared.png")
                        End If

                        NodoCarpeta.ChildNodes.Add(Nodoarchivo)
                    Else
                        VEstado = IIf(Not (ldrHijos(0).Item("nCarCodigo").ToString = "1" And ldrHijos(0).Item("cpercodigo").ToString <> IdentityUser.UserCode), " <a href=""" + ldrHijos(0).Item("cDocLinUrl").ToString + """ target=_blank>Ver</a>", "")
                        Nodoarchivo.Text = "<div style=""text-align:left;""><font style=""font-size: 12px;"">&nbsp;" & ldrHijos(0).Item("cDocLinDescripcion").ToString & "&nbsp;&nbsp;<br/><Font style=""font-style: italic; font-size: 10px;"">(" & ldrHijos(0).Item("Alias").ToString & ")</Font>&nbsp;" & VEstado
                        Nodoarchivo.Value = ldrHijos(0).Item("cDocLinDescripcion").ToString & "|" & ldrHijos(0).Item("nDocLinNum").ToString & "|" & ldrHijos(0).Item("cperCodigo").ToString & "|" & ldrHijos(0).Item("nCarCodigo").ToString
                        Nodoarchivo.ImageUrl = IIf(ldrHijos(0).Item("nCarCodigo").ToString = "1", "~/imagenes/Globo.png", "~/imagenes/Globoshared.png")
                        Nodoarchivo.NavigateUrl = "AL_CursoActual_RecProp.aspx?cDocCodigo=" & lblcdoccodigo.Text & "&nDocLin=" & ldrHijos(0).Item("nDocLinNum").ToString & "&nCurGruCodigo=" & nCurGruCodigo & "&value=" & NodoCarpeta.ValuePath & "/" & Nodoarchivo.Value
                        NodoCarpeta.ChildNodes.Add(Nodoarchivo)

                    End If
                End If

            Loop
            ldrHijos(0).Close()
            ldrHijos(0) = Nothing
        Loop
        ldrGrupo(0).Close()
        ldrGrupo(0) = Nothing
        TvVisor.CollapseAll()
        TvVisor.Nodes(0).Expanded = True
    End Sub

End Class